home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1998 September / Macworld (1998-09).dmg / Shareware World / Info / For Developers / MacZoop 1.8.3 / Required Classes / Z Headers / ZPrinter.h < prev    next >
Text File  |  1998-04-30  |  1KB  |  71 lines

  1. /*************************************************************************************************
  2. *
  3. *
  4. *            MacZoop - "the framework for the rest of us"         
  5. *
  6. *
  7. *
  8. *            ZPrinter.h            -- an object for doing printing
  9. *
  10. *
  11. *
  12. *
  13. *
  14. *            © 1996, Graham Cox
  15. *
  16. *
  17. *
  18. *
  19. *************************************************************************************************/
  20.  
  21. #pragma once
  22.  
  23.  
  24. #ifndef __ZPRINTER__
  25. #define    __ZPRINTER__
  26.  
  27. #include    <printing.h>
  28.  
  29. class    ZWindow;
  30.  
  31.  
  32. class    ZPrinter
  33. {
  34. protected:
  35.     ZWindow*    printWindow;
  36.     THPrint        macPrintH;
  37.     TPPrPort    printPort;
  38.     Rect        paperRect;
  39.     short        pH, pV, pageStart, pageEnd, pageNum;
  40.     Boolean        printInited;
  41.  
  42. public:
  43.     ZPrinter( ZWindow* aWindow = NULL );
  44.     virtual ~ZPrinter();
  45.     
  46.     
  47.     virtual void    Print();
  48.     virtual void    Print( ZWindow* aWindow );
  49.     virtual void    PageSetUp();
  50.     
  51.     virtual void    GetPaperRect( Rect* aRect );
  52.     
  53.     inline THPrint    GetMacPrintRecord() { return macPrintH; };
  54.     virtual void    SetMacPrintRecord( THPrint pRec );
  55.     virtual void    SetDefault();
  56.  
  57. protected:
  58.  
  59.     virtual void    PrintLoop();
  60.     virtual void    SetUpDocTitle( ZWindow* aWindow );
  61.     
  62.     WindowPtr    fakeWindow;
  63. };
  64.  
  65.  
  66. #define        kBadWindowPrintRefErr    301
  67. #define        kPrinterNotInitedErr    302
  68.  
  69. #define        kInitPrinterAlertID        134
  70.  
  71. #endif